home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / share / gtksourceview-2.0 / language-specs / scheme.lang < prev    next >
Extensible Markup Language  |  2009-10-02  |  10KB  |  302 lines

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3.  
  4.  Author: Paolo Borelli <pborelli@gnome.org>
  5.  Copyright (C) 2006-2007 Paolo Borelli
  6.  
  7.  This library is free software; you can redistribute it and/or
  8.  modify it under the terms of the GNU Library General Public
  9.  License as published by the Free Software Foundation; either
  10.  version 2 of the License, or (at your option) any later version.
  11.  
  12.  This library is distributed in the hope that it will be useful,
  13.  but WITHOUT ANY WARRANTY; without even the implied warranty of
  14.  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  15.  Library General Public License for more details.
  16.  
  17.  You should have received a copy of the GNU Library General Public
  18.  License along with this library; if not, write to the
  19.  Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  20.  Boston, MA 02111-1307, USA.
  21.  
  22. -->
  23. <language id="scheme" _name="Scheme" version="2.0" _section="Sources">
  24.   <metadata>
  25.     <property name="mimetypes">text/x-scheme</property>
  26.     <property name="globs">*.scm</property>
  27.     <property name="line-comment-start">;</property>
  28.   </metadata>
  29.  
  30.   <styles>
  31.     <style id="comment" _name="Comment" map-to="def:comment"/>
  32.     <style id="boolean" _name="Boolean" map-to="def:boolean"/>
  33.     <style id="string" _name="String" map-to="def:string"/>
  34.     <style id="keyword" _name="Keyword" map-to="def:keyword"/>
  35.     <style id="function" _name="Function" map-to="def:function"/>
  36.   </styles>
  37.  
  38.   <definitions>
  39.     <context id="line-comment" style-ref="comment" end-at-line-end="true">
  40.       <start>;</start>
  41.       <include>
  42.         <context ref="def:in-comment"/>
  43.       </include>
  44.     </context>
  45.  
  46.     <context id="string" style-ref="string">
  47.       <start>"</start>
  48.       <end>"</end>
  49.       <include>
  50.         <context ref="def:escape"/>
  51.       </include>
  52.     </context>
  53.  
  54.     <context id="keyword" style-ref="keyword">
  55.       <prefix>(?<![\w\d_-])</prefix>
  56.       <suffix>(?![\w\d_-])</suffix>
  57.       <keyword>and</keyword>
  58.       <keyword>begin</keyword>
  59.       <keyword>case</keyword>
  60.       <keyword>cond-expand</keyword>
  61.       <keyword>cond</keyword>
  62.       <keyword>define-accessor</keyword>
  63.       <keyword>define-class</keyword>
  64.       <keyword>defined\?</keyword>
  65.       <keyword>define-generic</keyword>
  66.       <keyword>define</keyword>
  67.       <keyword>define\*</keyword>
  68.       <keyword>define-macro</keyword>
  69.       <keyword>define-method</keyword>
  70.       <keyword>define-module</keyword>
  71.       <keyword>define-private</keyword>
  72.       <keyword>define-public</keyword>
  73.       <keyword>define\*-public</keyword>
  74.       <keyword>define-reader-ctor</keyword>
  75.       <keyword>define-syntax</keyword>
  76.       <keyword>define-syntax-macro</keyword>
  77.       <keyword>defmacro</keyword>
  78.       <keyword>defmacro\*</keyword>
  79.       <keyword>defmacro\*-public</keyword>
  80.       <keyword>delay</keyword>
  81.       <keyword>do</keyword>
  82.       <keyword>else</keyword>
  83.       <keyword>fluid-let</keyword>
  84.       <keyword>if</keyword>
  85.       <keyword>lambda</keyword>
  86.       <keyword>let</keyword>
  87.       <keyword>let\*</keyword>
  88.       <keyword>letrec</keyword>
  89.       <keyword>letrec-syntax</keyword>
  90.       <keyword>let-syntax</keyword>
  91.       <keyword>or</keyword>
  92.       <keyword>quasiquote</keyword>
  93.       <keyword>quote</keyword>
  94.       <keyword>set\!</keyword>
  95.       <keyword>syntax-rules</keyword>
  96.       <keyword>unquote</keyword>
  97.     </context>
  98.  
  99.     <context id="function" style-ref="function">
  100.       <prefix>(?<![\w\d_-])</prefix>
  101.       <suffix>(?![\w\d_-])</suffix>
  102.       <keyword>abs</keyword>
  103.       <keyword>acos</keyword>
  104.       <keyword>angle</keyword>
  105.       <keyword>append</keyword>
  106.       <keyword>apply</keyword>
  107.       <keyword>asin</keyword>
  108.       <keyword>assoc</keyword>
  109.       <keyword>assq</keyword>
  110.       <keyword>assv</keyword>
  111.       <keyword>atan</keyword>
  112.       <keyword>boolean\?</keyword>
  113.       <keyword>caaar</keyword>
  114.       <keyword>caadr</keyword>
  115.       <keyword>caar</keyword>
  116.       <keyword>cadar</keyword>
  117.       <keyword>caddr</keyword>
  118.       <keyword>cadr</keyword>
  119.       <keyword>call/cc</keyword>
  120.       <keyword>call-with-current-continuation</keyword>
  121.       <keyword>call-with-input-file</keyword>
  122.       <keyword>call-with-output-file</keyword>
  123.       <keyword>call-with-values</keyword>
  124.       <keyword>car</keyword>
  125.       <keyword>catch</keyword>
  126.       <keyword>cdaar</keyword>
  127.       <keyword>cdadr</keyword>
  128.       <keyword>cdar</keyword>
  129.       <keyword>cddar</keyword>
  130.       <keyword>cdddr</keyword>
  131.       <keyword>cddr</keyword>
  132.       <keyword>cdr</keyword>
  133.       <keyword>ceiling</keyword>
  134.       <keyword>char-alphabetic\?</keyword>
  135.       <keyword>char-ci>=\?</keyword>
  136.       <keyword>char-ci>\?</keyword>
  137.       <keyword>char-ci\=\?</keyword>
  138.       <keyword>char-ci<=\?</keyword>
  139.       <keyword>char-ci<\?</keyword>
  140.       <keyword>char-downcase</keyword>
  141.       <keyword>char->integer</keyword>
  142.       <keyword>char>=\?</keyword>
  143.       <keyword>char>\?</keyword>
  144.       <keyword>char=\?</keyword>
  145.       <keyword>char\?</keyword>
  146.       <keyword>char-lower-case\?</keyword>
  147.       <keyword>char<=\?</keyword>
  148.       <keyword>char<\?</keyword>
  149.       <keyword>char-numeric\?</keyword>
  150.       <keyword>char-ready\?</keyword>
  151.       <keyword>char-upcase</keyword>
  152.       <keyword>char-upper-case\?</keyword>
  153.       <keyword>char-whitespace\?</keyword>
  154.       <keyword>close-input-port</keyword>
  155.       <keyword>close-output-port</keyword>
  156.       <keyword>complex\?</keyword>
  157.       <keyword>cons</keyword>
  158.       <keyword>cos</keyword>
  159.       <keyword>current-input-port</keyword>
  160.       <keyword>current-output-port</keyword>
  161.       <keyword>delete-file</keyword>
  162.       <keyword>display</keyword>
  163.       <keyword>dynamic-wind</keyword>
  164.       <keyword>eof-object\?</keyword>
  165.       <keyword>eq\?</keyword>
  166.       <keyword>equal\?</keyword>
  167.       <keyword>eqv\?</keyword>
  168.       <keyword>eval</keyword>
  169.       <keyword>even\?</keyword>
  170.       <keyword>exact->inexact</keyword>
  171.       <keyword>exact\?</keyword>
  172.       <keyword>exit</keyword>
  173.       <keyword>exp</keyword>
  174.       <keyword>expt</keyword>
  175.       <keyword>file-exists\?</keyword>
  176.       <keyword>file-or-directory-modify-seconds</keyword>
  177.       <keyword>floor</keyword>
  178.       <keyword>force</keyword>
  179.       <keyword>for-each</keyword>
  180.       <keyword>gcd</keyword>
  181.       <keyword>gensym</keyword>
  182.       <keyword>getenv</keyword>
  183.       <keyword>get-output-string</keyword>
  184.       <keyword>imag-part</keyword>
  185.       <keyword>inexact\?</keyword>
  186.       <keyword>input-port\?</keyword>
  187.       <keyword>integer->char</keyword>
  188.       <keyword>integer\?</keyword>
  189.       <keyword>lcm</keyword>
  190.       <keyword>length</keyword>
  191.       <keyword>list->string</keyword>
  192.       <keyword>list->vector</keyword>
  193.       <keyword>list</keyword>
  194.       <keyword>list\?</keyword>
  195.       <keyword>list-ref</keyword>
  196.       <keyword>list-tail</keyword>
  197.       <keyword>load</keyword>
  198.       <keyword>log</keyword>
  199.       <keyword>magnitude</keyword>
  200.       <keyword>make-polar</keyword>
  201.       <keyword>make-rectangular</keyword>
  202.       <keyword>make-string</keyword>
  203.       <keyword>make-vector</keyword>
  204.       <keyword>map</keyword>
  205.       <keyword>max</keyword>
  206.       <keyword>member</keyword>
  207.       <keyword>memq</keyword>
  208.       <keyword>memv</keyword>
  209.       <keyword>min</keyword>
  210.       <keyword>modulo</keyword>
  211.       <keyword>negative\?</keyword>
  212.       <keyword>newline</keyword>
  213.       <keyword>nil</keyword>
  214.       <keyword>not</keyword>
  215.       <keyword>null\?</keyword>
  216.       <keyword>number->string</keyword>
  217.       <keyword>number\?</keyword>
  218.       <keyword>odd\?</keyword>
  219.       <keyword>open-input-file</keyword>
  220.       <keyword>open-input-string</keyword>
  221.       <keyword>open-output-file</keyword>
  222.       <keyword>open-output-string</keyword>
  223.       <keyword>output-port\?</keyword>
  224.       <keyword>pair\?</keyword>
  225.       <keyword>peek-char</keyword>
  226.       <keyword>port\?</keyword>
  227.       <keyword>positive\?</keyword>
  228.       <keyword>procedure\?</keyword>
  229.       <keyword>quotient</keyword>
  230.       <keyword>rational\?</keyword>
  231.       <keyword>read-char</keyword>
  232.       <keyword>read</keyword>
  233.       <keyword>read-line</keyword>
  234.       <keyword>real\?</keyword>
  235.       <keyword>real-part</keyword>
  236.       <keyword>remainder</keyword>
  237.       <keyword>reverse</keyword>
  238.       <keyword>reverse\!</keyword>
  239.       <keyword>round\</keyword>
  240.       <keyword>set-car\!</keyword>
  241.       <keyword>set-cdr\!</keyword>
  242.       <keyword>sin</keyword>
  243.       <keyword>sqrt</keyword>
  244.       <keyword>string-append</keyword>
  245.       <keyword>string-ci>=\?</keyword>
  246.       <keyword>string-ci>\?</keyword>
  247.       <keyword>string-ci=\?</keyword>
  248.       <keyword>string-ci<=\?</keyword>
  249.       <keyword>string-ci<\?</keyword>
  250.       <keyword>string-copy</keyword>
  251.       <keyword>string-fill\!</keyword>
  252.       <keyword>string>=\?</keyword>
  253.       <keyword>string>\?</keyword>
  254.       <keyword>string->list</keyword>
  255.       <keyword>string->number</keyword>
  256.       <keyword>string->symbol</keyword>
  257.       <keyword>string</keyword>
  258.       <keyword>string=\?</keyword>
  259.       <keyword>string\?</keyword>
  260.       <keyword>string-length</keyword>
  261.       <keyword>string<=\?</keyword>
  262.       <keyword>string<\?</keyword>
  263.       <keyword>string-ref</keyword>
  264.       <keyword>string-set\!</keyword>
  265.       <keyword>substring</keyword>
  266.       <keyword>symbol->string</keyword>
  267.       <keyword>symbol\?</keyword>
  268.       <keyword>system</keyword>
  269.       <keyword>tan</keyword>
  270.       <keyword>truncate</keyword>
  271.       <keyword>values</keyword>
  272.       <keyword>vector-fill\!</keyword>
  273.       <keyword>vector->list</keyword>
  274.       <keyword>vector</keyword>
  275.       <keyword>vector\?</keyword>
  276.       <keyword>vector-length</keyword>
  277.       <keyword>vector-ref</keyword>
  278.       <keyword>vector-set\!</keyword>
  279.       <keyword>with-input-from-file</keyword>
  280.       <keyword>with-output-to-file</keyword>
  281.       <keyword>write-char</keyword>
  282.       <keyword>write</keyword>
  283.       <keyword>zero\?</keyword>
  284.     </context>
  285.  
  286.     <context id="boolean-value" style-ref="boolean">
  287.       <match>#[ft]</match>
  288.     </context>
  289.  
  290.     <context id="scheme">
  291.       <include>
  292.         <context ref="line-comment"/>
  293.         <context ref="string"/>
  294.         <context ref="keyword"/>
  295.         <context ref="function"/>
  296.         <context ref="boolean-value"/>
  297.       </include>
  298.     </context>
  299.  
  300.   </definitions>
  301. </language>
  302.